home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Software Contest 3 / FM Towns Software Contest 3.iso / exp / telop / denko / tif_read.asm < prev   
Assembly Source File  |  1994-01-07  |  1KB  |  73 lines

  1. ;******************************************************
  2. ;    opening_put    proc
  3. ;    タイトル表示
  4. ;******************************************************
  5. opening_put    proc
  6.     lea    edx,openingpath
  7.     call    file_read
  8.     call    expand
  9.     ret
  10. openingpath    db    'opening.tif',00h
  11. opening_put    endp
  12.  
  13. ;******************************************************
  14. ;    board_put    proc
  15. ;    背景表示
  16. ;******************************************************
  17. board_put    proc
  18.     lea    edx,boardpath
  19.     call    file_read
  20.     call    expand
  21.     ret
  22. boardpath    db    'board.tif',00h
  23. board_put    endp
  24.  
  25. ;******************************************************
  26. ;    file_read    proc
  27. ;    グラフィックデータ読み出し
  28. ;******************************************************
  29. file_read    proc
  30.     mov    ax,3d00h
  31.     int    21h
  32.     jc    #ret
  33.     mov    bx,ax
  34.     mov    ax,4200h
  35.     mov    ecx,0
  36.     mov    edx,512
  37.     int    21h
  38.     mov    ecx,154112-512
  39.     lea    edx,buffer
  40.     mov    ax,3f00h
  41.     int    21h
  42.     mov    ax,3e00h
  43.     int    21h
  44. #ret:    ret
  45. file_read    endp
  46.  
  47. ;******************************************************
  48. ;    expand    proc
  49. ;    データをVRAMに展開する
  50. ;******************************************************
  51. expand    proc
  52.     sub    eax,eax
  53.     mov    ebx,eax
  54.     mov    ecx,ebx
  55.     mov    edx,ecx
  56.     lea    esi,buffer
  57.     mov    edi,40000h
  58.     push    120h
  59.     pop    es
  60. #000:    mov    eax,dword ptr ds:[esi]
  61.     add    esi,4
  62.     mov    dword ptr es:[edi+edx],eax
  63.     add    edx,4
  64.     cmp    edx,320*2
  65.     jnz    #000
  66.     mov    edx,0
  67.     add    edi,512*2
  68.     inc    ecx
  69.     cmp    ecx,240
  70.     jnz    #000
  71.     ret
  72. expand    endp
  73.